package com.abc.recycling.service;

import com.abc.recycling.domain.Evaluation;
import java.util.List;

public interface EvaluationService {
    Evaluation getEvaluation(Long id);
    List<Evaluation> getUserEvaluations(Long userId);
    List<Evaluation> getCollectorEvaluations(Long collectorId);
    List<Evaluation> getCollectorRecentEvaluations(Long collectorId, int limit);
    Double getCollectorAverageRating(Long collectorId);
    List<Integer> getCollectorRatingDistribution(Long collectorId);
    long getCollectorEvaluationCount(Long collectorId);
    long getCollectorNewEvaluationCount(Long collectorId);
    boolean isOrderEvaluated(Long orderId);
    Evaluation createEvaluation(Evaluation evaluation);
    void updateEvaluation(Evaluation evaluation);
    void deleteEvaluation(Long id);
    Evaluation replyEvaluation(Long id, String reply);
    List<Evaluation> searchEvaluations(Long userId, Long collectorId, Integer status, Double minRating, Double maxRating);
} 